The subject matter discussed in this section should not be assumed to be prior art merely as a result of its mention in this section. Similarly, a problem mentioned in this section or associated with the subject matter provided as background should not be assumed to have been previously recognized in the prior art. The subject matter in this section merely represents different approaches, which in and of themselves may also correspond to implementations of the claimed technology.
In today's world, we are dealing with huge data volumes, popularly referred to as “Big Data”. Web applications that serve and manage millions of Internet users, such as Facebook™, Instagram™, Twitter™, banking websites, or even online retail shops, such as Amazon.com™ or eBay™ are faced with the challenge of ingesting high volumes of data as fast as possible so that the end users can be provided with a real-time experience.
Another major contributor to Big Data is a concept and paradigm called “Internet of Things” (IoT). IoT is about a pervasive presence in the environment of a variety of things/objects that through wireless and wired connections are able to interact with each other and cooperate with other things/objects to create new applications/services. These applications/services are in areas likes smart cities (regions), smart car and mobility, smart home and assisted living, smart industries, public safety, energy and environmental protection, agriculture and tourism.
Currently, there is a need to make such IoT applications/services more accessible to non-experts. Until now, non-experts who have highly valuable non-technical domain knowledge have cheered from the sidelines of the IoT ecosystem because of the IoT ecosystem's reliance on tech-heavy products that require substantial programming experience. Thus, it has become imperative to increase the non-experts' ability to independently combine and harness big data computing and analytics without reliance on expensive technical consultants.
The technology disclosed offers localized states in a declarative framework that implements a state machine for multi-step progression of interaction with an entity. The declarative framework is usable over and over for a broad range of applications, with state localization enabling the provision of a simpler rule-based authoring tool for specifying the different elements and components of what has previously been a complex state machine.
Many conditions can be described using a matrix that includes events generated by writing appropriate tests against the profile or local variables for a multi-step progression of interaction with an entity for an application. The profile includes current information about the object of the orchestration. The matrix can combine throttling, synthetic events, and the tests written against the profile and local variables to reduce the form of the state machine, while covering most conditions associated with state definitions, state transition triggers, state transition conditions and state transition actions that were formerly defined by explicit states. Once defined, the combination of events, profiles and states simplifies the state machine that is automatically generated and implemented based on the declarative input provided by a non-technical user.
Therefore, an opportunity arises to provide systems and methods that use simple and easily codable declarative language based solutions to execute big data computing and analytics tasks. Increased revenue, higher user retention, improved user engagement, and experience may result.